﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Bibylon.BehafX.StateMachine.concept
{
    internal abstract class action : node
    {
        /// <summary>
        /// 
        /// </summary>
        public action(string name, int nid, node parent)
            : base (name, nid, parent)
        { 
        }

        /// <summary>
        /// @Copydoc = node::Category
        /// </summary>
        public override string Category
        {
            get { return "Action"; }
        }

        /// <summary>
        /// @Copydoc - node::execute
        /// </summary>
        internal override int execute(object agent, object any)
        {
            Status result = Status.Failed;// by default 

            // execute and get result back
            // agent.behav ( this, any );
            return (int)result;
        }

    }
}
